<!DOCTYPE HTML>
<html lang="en-US">
<head>
  <title>Albert - Changelog</title>
  <meta charset="UTF-8">
  <link rel="icon" type="image/x-icon" href="/favicon.ico">
  <link rel="alternate" type="application/rss+xml" title="Albert RSS" href="/feed.xml">
  <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300italic,700,700italic">
  <link rel="stylesheet" href="https://albertlauncher.github.io/css/main.css">
</head>

<body>
    <main class="wrapper">
      <nav class="site-header">
    <div class="container">
        <a class="title" href="https://albertlauncher.github.io">
            <img class="icon" src="https://albertlauncher.github.io/img/albert.svg" alt="Albert" title="Albert">
            <span class="title">Albert</span>
        </a>
        <nav class="navigation float-right">
            <ul>
    <li class="">
        <a href="/">Home</a>
    </li>
    <li class="current">
        <a href="/docs/">Docs</a>
    </li>
    <li class="">
        <a href="/news/">News</a>
    </li>
    <li class="">
        <a href="/help/">Help</a>
    </li>
    <li>
        <a href="https://github.com/albertlauncher/albert.git"><span class="hide-on-mobiles">View on </span>GitHub</a>
    </li>
</ul>

        </nav>
    </div>
</nav>

      <section class="container docs">
    <article>
        <div class="row">
            <div class="column column-20">
              <aside id="doc_nav">
  
    <h5>User guide</h5>
    <ul>

  
  
  <li class=""><a href="/docs/installing/">Installing Albert</a></li>

  
  
  <li class=""><a href="/docs/using/">Using Albert</a></li>

  
  
  <li class=""><a href="/docs/extending/">Extending Albert</a></li>

  
  
  <li class=""><a href="/docs/extensions/">Extensions</a></li>

  
  
  <li class=""><a href="/docs/faq/">Troubleshooting</a></li>

</ul>

  
    <h5>Meta</h5>
    <ul>

  
  
  <li class=""><a href="/docs/contributing/">Contributing</a></li>

  
  
  <li class=""><a href="/docs/donation/">Donating</a></li>

  
  
  <li class="current"><a href="/docs/changelog/">Changelog</a></li>

</ul>

  
</aside>

            </div>
            <div class="column column-80">
                <div class="float-right">
                    <a href="https://github.com/albertlauncher/documentation/edit/master/src/_docs/changelog.md">Improve this page</a>
                </div>
                <h1>Changelog</h1>
                <p>This is the feature centric changelog. It may be a bit behind, since I update it in batches. For a complete changelog refer to the news and git log.</p>

<h2 id="v0161-2018-12-31">v0.16.1 (2018-12-31)</h2>

<ul>
  <li>[albert] Fix default plugin lookup path</li>
  <li>[albert] Fix flicker when changing frontends</li>
  <li>[albert] Fix “Terminal option resets after a restart”</li>
  <li>[albert] Link libglobalshortcut statically</li>
  <li>[albert] Add a build flag for QtCharts</li>
  <li>[albert] Drop debug options if favor of QLoggingCategory env vars</li>
  <li>[plugins:ssh] Fix input regex. Sort by length then lexically.</li>
  <li>[plugins:ssh] Use backward compatible ssh url syntax</li>
  <li>[plugins:qml] Consistent form layout</li>
  <li>[modules:aur] Sort items by length first</li>
</ul>

<h2 id="v0160-2018-12-28">v0.16.0 (2018-12-28)</h2>

<ul>
  <li>Add jekyll website as submodule</li>
  <li>New project structure (minimal shared lib)</li>
  <li>Derive albert version from CMake project</li>
  <li>Let travis build against Ubuntu 18.04 and 16.04</li>
  <li>Backward compatibility for Ubuntu 16.04</li>
  <li>Build without QtCharts if Qt version below 5.6</li>
  <li>Let fuzzy require an additional character. Tolerance: floor((wordlen - 1)/3))</li>
  <li>Print logging category to stdout [not all plugins support it yet]</li>
  <li>[Term] Change terminal action order: Let “Run w/o term” be the last one</li>
  <li>[VBox] Set default build switch for VirtualBox to OFF</li>
  <li>[Files] Add fancy icons to mime dialog</li>
  <li>[Py] Use ast to read metadata without loading the modules</li>
  <li>[Py] Additional constraint: Metadata have to be string literals (for ast)</li>
  <li>[Py] Additional constraint: Name modules according PEP8</li>
  <li>[Py/WinSwitch] Add close win action</li>
  <li>[Py/VBox] Add VirtualBox extension</li>
</ul>

<h2 id="v0150-2018-12-16">v0.15.0 (2018-12-16)</h2>

<ul>
  <li>Usage graph in the settings (QtCharts (&gt;=5.6))</li>
  <li>[QML] Frontend plugin requires ()5.9</li>
  <li>[QML] History search of the input now allows substring matching (Type and navigate)</li>
  <li>[QML] Store user input of every session</li>
  <li>New Python extension: Fortune</li>
  <li>New Python extension: Window switcher</li>
</ul>

<h2 id="v01422-2018-09-21">v0.14.22 (2018-09-21)</h2>

<ul>
  <li>Telemetry is now opt-in.</li>
  <li>New Python extension: Pidgin</li>
  <li>New themes</li>
</ul>

<h2 id="v01421-2018-06-08">v0.14.21 (2018-06-08)</h2>

<ul>
  <li>Bugfix release</li>
</ul>

<h2 id="v01420-2018-06-04">v0.14.20 (2018-06-04)</h2>

<ul>
  <li>Bugfix release</li>
</ul>

<h2 id="v01419-2018-05-15">v0.14.19 (2018-05-15)</h2>

<ul>
  <li>New Python extension: Datetime. (Time display and conversion. Supersedes the external extension)</li>
  <li>New Python extension: Bitfinex. (Quickly access Bitfinex markets)</li>
  <li>The file browse mode finally mimics bash completion behavior.</li>
</ul>

<h2 id="v01418-2018-03-23">v0.14.18 (2018-03-23)</h2>

<ul>
  <li>Hotfix release</li>
</ul>

<h2 id="v01417-2018-03-23">v0.14.17 (2018-03-23)</h2>

<ul>
  <li>New Python extension: Arch Wiki</li>
  <li>New option in applications extension: <em>Use keywords for lookup</em></li>
  <li>New option in applications extension: <em>Use generic name for lookup</em></li>
  <li>The <em>kvstore</em> extension was renamed to <em>Snippets</em> and got an improved config UI.</li>
</ul>

<h2 id="v01416-2018-03-09">v0.14.16 (2018-03-09)</h2>

<ul>
  <li>New Python extension: Gnome dictionary (nikhilwanpal)</li>
  <li>New Python extension: Mathematica (Asger Hautop Drewsen)</li>
  <li>New Python extension: TeX to unicode (Asger Hautop Drewsen)</li>
  <li>New Python extension: IP address (Benedict Dudel)</li>
  <li>New Python extension: Multi Translate (David Britt)</li>
  <li>New Python extension: Emoji lookup (David Britt)</li>
  <li>New Python extension: Kaomoji lookup (David Britt)</li>
  <li>New Python extension: Timer</li>
  <li>New Python extension: Binance</li>
</ul>

<h2 id="v01415-2018-01-26">v0.14.15 (2018-01-26)</h2>

<ul>
  <li>New Python extensions: CoinMarketCap, Trash, Pomodoro, Epoch, Packagist.</li>
  <li>New Python API PythonInterface/v0.2 (<code class="highlighter-rouge">configLocation()</code>, <code class="highlighter-rouge">dataLocation()</code>,<code class="highlighter-rouge">cacheLocation()</code>).</li>
</ul>

<h2 id="v01414-2017-12-06">v0.14.14 (2017-12-06)</h2>

<ul>
  <li>New Python extension: npm (Benedict Dudel)</li>
</ul>

<h2 id="v01413-2017-11-25">v0.14.13 (2017-11-25)</h2>

<ul>
  <li>Rich text support</li>
  <li>New AUR Python extension</li>
  <li>New <code class="highlighter-rouge">scrot</code> Python extension</li>
</ul>

<h2 id="v01412-2017-11-23">v0.14.12 (2017-11-23)</h2>

<ul>
  <li>New CopyQ Python extension (Ported from external extension)</li>
</ul>

<h2 id="v01411-2017-11-19">v0.14.11 (2017-11-19)</h2>

<ul>
  <li>New <code class="highlighter-rouge">locate</code> Python extension</li>
</ul>

<h2 id="v01410-2017-11-16">v0.14.10 (2017-11-16)</h2>

<ul>
  <li>Bugfixes</li>
</ul>

<h2 id="v0149-2017-11-16">v0.14.9 (2017-11-16)</h2>

<ul>
  <li>Better HiDPI support</li>
  <li>New commandline option for debug output (-d)</li>
</ul>

<h2 id="v0148-2017-11-14">v0.14.8 (2017-11-14)</h2>

<ul>
  <li>New Gnote Python extension (Ported from external extension)</li>
  <li>New Tomboy Python extension (Ported from external extension)</li>
  <li>New Pacman Python extension</li>
  <li>New Pass Python extension</li>
  <li>New Kill Python extension</li>
</ul>

<h2 id="v0147-2017-11-03">v0.14.7 (2017-11-03)</h2>

<ul>
  <li>Bugfixes</li>
</ul>

<h2 id="v0146-2017-10-31">v0.14.6 (2017-10-31)</h2>

<ul>
  <li>New Wikipedia Python extension</li>
</ul>

<h2 id="v0145-2017-10-30">v0.14.5 (2017-10-30)</h2>

<ul>
  <li>Bugfixes</li>
</ul>

<h2 id="v0144-2017-10-25">v0.14.4 (2017-10-25)</h2>

<ul>
  <li>New base converter Python extension</li>
</ul>

<h2 id="v0143-2017-10-21">v0.14.3 (2017-10-21)</h2>

<ul>
  <li>New Google Translate Python extension</li>
</ul>

<h2 id="v0142-2017-10-20">v0.14.2 (2017-10-20)</h2>

<ul>
  <li>Bugfixes</li>
</ul>

<h2 id="v0141-2017-10-19">v0.14.1 (2017-10-19)</h2>

<ul>
  <li>Bugfixes</li>
</ul>

<h2 id="v0140-2017-10-18">v0.14.0 (2017-10-18)</h2>

<ul>
  <li>New Python Embedding extension</li>
  <li>New Python Eval Python extension</li>
  <li>New Debugging Python extension</li>
  <li>New Zeal Python extension</li>
  <li>New GoldenDict Python extension</li>
  <li>New Unit Converter Python extension (Gnu units)</li>
  <li>New Currency Converter Python extension (Google finance)</li>
</ul>

<h2 id="v0131-2017-00-30">v0.13.1 (2017-00-30)</h2>

<ul>
  <li>Bugfixes</li>
</ul>

<h2 id="v0130-2017-09-28">v0.13.0 (2017-09-28)</h2>

<ul>
  <li>Modular frontends</li>
  <li>QML frontend</li>
  <li>Tree structure in file index and “smart” indexing</li>
  <li>New KeyValue extension</li>
  <li>New Hash Generator extension</li>
  <li>Shell like completion for terminal extension</li>
</ul>

<h2 id="v0120-2017-06-09">v0.12.0 (2017-06-09)</h2>

<ul>
  <li>Git-like ignore files</li>
  <li>Dedicated dialog for websearch editing.</li>
</ul>

<h2 id="v0113-2017-05-28">v0.11.3 (2017-05-28)</h2>

<ul>
  <li>Bugfixes</li>
</ul>

<h2 id="v0112-2017-05-13">v0.11.2 (2017-05-13)</h2>

<ul>
  <li><kbd>Home</kbd> and <kbd>End</kbd> now work for the results list holding <kbd>Ctrl</kbd>.</li>
</ul>

<h2 id="v0111-2017-04-16">v0.11.1 (2017-04-16)</h2>

<ul>
  <li>Bugfixes</li>
</ul>

<h2 id="v0110-2017-04-16">v0.11.0 (2017-04-16)</h2>

<ul>
  <li>Fine-grained control of the MIME types to be indexed.</li>
  <li>Extensions can now have multiple triggers.</li>
  <li>The sorting algorithm is now stable.</li>
  <li>Browse mode now lists the results in lexicographical order with directories before the files.</li>
  <li>The use of fallbacks has been disabled for triggered queries.</li>
  <li>Further the websearch extension now contains an URL handler.</li>
  <li>The qss property <code class="highlighter-rouge">selection-color</code> works as expected now.</li>
</ul>

<h2 id="v0104-2017-04-14">v0.10.4 (2017-04-14)</h2>

<ul>
  <li>Bugfixes</li>
</ul>

<h2 id="v0103-2017-04-02">v0.10.3 (2017-04-02)</h2>

<ul>
  <li>Terminal extension does no more show suggestions.</li>
  <li>Any shell querying dropped.</li>
  <li>Bugfixes</li>
</ul>

<h2 id="v0102-2017-03-24">v0.10.2 (2017-03-24)</h2>

<ul>
  <li>Bugfixes</li>
</ul>

<h2 id="v0101-2017-03-20">v0.10.1 (2017-03-20)</h2>

<ul>
  <li>Bugfixes</li>
</ul>

<h2 id="v0100-2017-03-19">v0.10.0 (2017-03-19)</h2>

<ul>
  <li>Tab completion.</li>
  <li>Hovering over the input box the mouse wheel can now be used to browse the history.</li>
  <li>Spotlight themes (Bright, Dark and Space).</li>
  <li><a href="/docs/extensions/mpris/">MPRIS</a> extension</li>
  <li><a href="/docs/extensions/ssh/">Secure Shell</a> extension.</li>
  <li>The terminal extension now provides the shell aliases too.</li>
  <li>File browse mode.</li>
  <li>The application extension allows to ignore the <code class="highlighter-rouge">OnlyShowIn</code>/<code class="highlighter-rouge">NotShowIn</code> keys.</li>
  <li>The bash script to clone the template extension is now deprecated and replaced by a Python script.</li>
</ul>

<h2 id="v095-2017-03-13">v0.9.5 (2017-03-13)</h2>

<ul>
  <li>Bugfixes</li>
</ul>

<h2 id="v094-2017-03-01">v0.9.4 (2017-03-01)</h2>

<ul>
  <li>Bugfixes</li>
</ul>

<h2 id="v093-2017-02-05">v0.9.3 (2017-02-05)</h2>

<ul>
  <li>Bugfixes</li>
</ul>

<h2 id="v092-2017-01-30">v0.9.2 (2017-01-30)</h2>

<ul>
  <li>Bugfixes</li>
</ul>

<h2 id="v091-2017-01-23">v0.9.1 (2017-01-23)</h2>

<ul>
  <li>Chooseable terminal command of a list of installed terminals.</li>
  <li>The app icon now uses a theme icon</li>
  <li><em>Open terminal here</em> action.</li>
  <li>Mostly fixes</li>
</ul>

<h2 id="v090-2017-01-17">v0.9.0 (2017-01-17)</h2>

<ul>
  <li>New extension system architecture</li>
  <li>External extensions extension</li>
  <li>Firefox extension</li>
  <li>Improved VirtualBox extension</li>
</ul>

<h2 id="v0811-2016-09-29">v0.8.11 (2016-09-29)</h2>

<ul>
  <li>Plugin abstraction architecture</li>
  <li>New plugin support: Native C++ QPlugins</li>
  <li>New plugin support: Executables</li>
  <li>Single click activation of items</li>
  <li>Action modifiers</li>
  <li>Multithreading</li>
  <li>Core is now responsible for usage counting (obsoletes most serialization)</li>
  <li>Asynchronous query “live” results</li>
  <li>Tray icon</li>
  <li>New option: Show tray icon</li>
  <li>New extension: Debug</li>
</ul>

<h2 id="v0810-2016-06-23">v0.8.10 (2016-06-23)</h2>

<ul>
  <li>New extension: Virtual Box</li>
  <li>Basic IPC</li>
  <li>Graceful termination on SIGHUP</li>
</ul>

<h2 id="v089-2016-05-12">v0.8.9 (2016-05-12)</h2>

<ul>
  <li>New option: Hide on close</li>
  <li>New option: Display shadow</li>
  <li>Graceful termination on SIGINT</li>
</ul>

<h2 id="v088-2016-04-28">v0.8.8 (2016-04-28)</h2>

<ul>
  <li>Single instance</li>
</ul>

<h2 id="v0873-2016-04-27-v0872-2016-04-03-v0871-2016-03-31">v0.8.7.3 (2016-04-27), v0.8.7.2 (2016-04-03), v0.8.7.1 (2016-03-31)</h2>

<ul>
  <li>Hotfixes</li>
</ul>

<h2 id="v087-2016-03-31">v0.8.7 (2016-03-31)</h2>

<ul>
  <li>New extension: Terminal</li>
  <li>Project structure: Use libraries</li>
</ul>

<h2 id="v086-2016-03-28">v0.8.6 (2016-03-28)</h2>

<ul>
  <li>Restructured settings widget</li>
</ul>

<h2 id="v085-2016-03-25">v0.8.5 (2016-03-25)</h2>

<ul>
  <li>Custom icon lookup</li>
  <li>Make main window movable</li>
  <li>Show alternative actions o Tab</li>
  <li>New option: Always on top</li>
  <li>New option: Hide on focus out</li>
  <li>New option: Display icons</li>
  <li>New option: Display scrollbar</li>
  <li>Dozens of new themes: Dark, Bright, SolarizedDark, SolarizedBright in several colors.</li>
</ul>

<h2 id="v084-2016-03-15">v0.8.4 (2016-03-15)</h2>

<ul>
  <li>Show message box after ungraceful termination</li>
</ul>

<h2 id="v083-2016-03-13">v0.8.3 (2016-03-13)</h2>

<ul>
  <li>Restructured settings widget</li>
</ul>

<h2 id="v082-2016-03-09">v0.8.2 (2016-03-09)</h2>

<ul>
  <li>New option: Group separators for calculator</li>
  <li>New themes: Arc</li>
  <li>New theme: Numix</li>
</ul>

<h2 id="v081-2016-03-04">v0.8.1 (2016-03-04)</h2>

<ul>
  <li>Minor tasks and improvements</li>
</ul>

<h2 id="v080-2015-10-27">v0.8.0 (2015-10-27)</h2>

<ul>
  <li>New extension: System control</li>
</ul>

<h2 id="v077-2015-10-16">v0.7.7 (2015-10-16)</h2>

<ul>
  <li>Bring settings window to front if it is already open.</li>
</ul>

<h2 id="v076-2015-10-15">v0.7.6 (2015-10-15)</h2>

<ul>
  <li>Reorderable websearches</li>
  <li>Allow exclusive queries by trigger</li>
</ul>

<h2 id="v075-2015-10-12">v0.7.5 (2015-10-12)</h2>

<ul>
  <li>Graceful termination on SIGINT</li>
</ul>

<h2 id="v071-2015-10-06-v072-2015-10-07-v073-2015-10-07-v074-2015-10-08">v0.7.1 (2015-10-06), v0.7.2 (2015-10-07), v0.7.3 (2015-10-07), v0.7.4 (2015-10-08)</h2>

<ul>
  <li>Tasks, Hotfixes, minor changes</li>
</ul>

<h2 id="v070-2015-10-05">v0.7.0 (2015-10-05)</h2>

<ul>
  <li>Implement plugin architecture</li>
  <li>Port the modules</li>
  <li>Ignore file (“.albertignore”)</li>
  <li>Actions</li>
  <li>Threaded background indexing</li>
  <li>New themes</li>
</ul>

<h2 id="v060-2014-11-12">v0.6.0 (2014-11-12)</h2>

<ul>
  <li>Make action modifications configurable</li>
  <li>Command history</li>
</ul>

<h2 id="v050-2014-11-06">v0.5.0 (2014-11-06)</h2>

<ul>
  <li>Add configuration widget to configure the modules</li>
  <li>Make user interface themable</li>
  <li>Provide proof-of-concept themes</li>
  <li>Make actions modifiable</li>
  <li>Show action modifications in the list</li>
  <li>Use CMake build system</li>
</ul>

<h2 id="v040-2014-10-16">v0.4.0 (2014-10-16)</h2>

<ul>
  <li>Add settings widget</li>
  <li>Implement indexing and search algorithms ‘prefixmatch’ and ‘fuzzy’</li>
</ul>

<h2 id="v030-2014-09-12">v0.3.0 (2014-09-12)</h2>

<ul>
  <li>Implement serialization of indexes</li>
  <li>New module: Applications</li>
  <li>New module: Bookmarks</li>
  <li>New module: Calculator</li>
  <li>New module: Web search</li>
</ul>

<h2 id="v020-2014-09-08">v0.2.0 (2014-09-08)</h2>

<ul>
  <li>Abstract module architecture</li>
  <li>New module: Files</li>
</ul>

<h2 id="v010-2014-09-01">v0.1.0 (2014-09-01)</h2>

<ul>
  <li>Basic user interface</li>
  <li>Hotkeymanager</li>
</ul>

            </div>
        </div>
    </article>
    </div>
</section>

      
      <script>
  var anchorForId = function (id) {
    var anchor = document.createElement("a");
    anchor.className = "header-link";
    anchor.href      = "#" + id;
    anchor.innerHTML = "<i class=\"fa fa-link\"></i>";
    anchor.title = "Permalink";
    return anchor;
  };

  var linkifyAnchors = function (level, containingElement) {
    var headers = containingElement.getElementsByTagName("h" + level);
    for (var h = 0; h < headers.length; h++) {
      var header = headers[h];

      if (typeof header.id !== "undefined" && header.id !== "") {
        header.appendChild(anchorForId(header.id));
      }
    }
  };

  document.onreadystatechange = function () {
    if (this.readyState === "complete") {
      var contentBlock = document.getElementsByClassName("docs")[0] || document.getElementsByClassName("news")[0];
      if (!contentBlock) {
        return;
      }
      for (var level = 1; level <= 6; level++) {
        linkifyAnchors(level, contentBlock);
      }
    }
  };

  var topEdge
  document.onscroll = function () {
    if (topEdge === undefined)
      topEdge = document.getElementById("doc_nav").getBoundingClientRect().top+window.pageYOffset-20;

    if ( window.pageYOffset > topEdge)
      document.getElementById("doc_nav").classList.add("stuck");
    else
      document.getElementById("doc_nav").classList.remove("stuck");
  };



</script>

    </main>
</body>
</html>
